package org.edu.modules.terminal.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
import java.util.Map;
import org.edu.modules.course.entity.VeCuzCourse;
import org.edu.modules.liancategory.entity.VeCuzCourseCategory;
import org.edu.modules.maker.entity.VeCuzCourseMaker;
import org.edu.modules.summary.entity.VeCuzCourseSummary;
import org.edu.modules.terminal.entity.VeCuzTerminal;
import org.edu.modules.terminal.entity.VeCuzTerminalCourse;
import org.edu.page.PageCondition;
import org.edu.page.PageResult;

public abstract interface IVeCuzTerminalService
        extends IService<VeCuzTerminal>
{
    public abstract PageResult findAllPage(PageCondition paramPageCondition);

    public abstract List<VeCuzTerminal> findAllByPages(PageCondition paramPageCondition);

    public abstract IPage<Map<String, Object>> train(Page<Map<String, Object>> paramPage, QueryWrapper<VeCuzTerminal> paramQueryWrapper);

    public abstract IPage<Map<String, Object>> xmsiteLageMaps(Page<Map<String, Object>> paramPage, QueryWrapper<VeCuzTerminal> paramQueryWrapper);

    public abstract boolean saveTerminal(VeCuzCourse paramVeCuzCourse, VeCuzCourseCategory paramVeCuzCourseCategory, List<VeCuzCourseMaker> paramList, VeCuzCourseSummary paramVeCuzCourseSummary, VeCuzTerminal paramVeCuzTerminal);

    public abstract boolean saveTer(VeCuzTerminal paramVeCuzTerminal);

    public abstract IPage<Map<String, Object>> makeLageMaps(Page<Map<String, Object>> paramPage, QueryWrapper<VeCuzTerminalCourse> paramQueryWrapper);

    public abstract IPage<Map<String, Object>> makeedLageMaps(Page<Map<String, Object>> paramPage, QueryWrapper<VeCuzTerminalCourse> paramQueryWrapper);
}
